# 练习创建索引
# 向量字段需创建索引以加速检索。常用类型有 IVF_FLAT、HNSW、IVF_PQ 等。

# 导入pymilvus 相关模块：集合，连接
from pymilvus import Collection, connections

# 连接到Milvus服务器，使用默认连接别名，连接到本地主机的19530端口，数据库名为test
connections.connect("default", host="localhost", port="19530", db_name="test")

# 获取名为 "example" 的集合对象
collection = Collection("example")

# 定义索引参数配置
index_params = {
    "metric_type": "COSINE", # 距离度量方式：L2、IP、COSINE
    "index_type": "IVF_FLAT", # 索引类型 Inverted File with Flat (倒排文件+暴力遍历)
    "params": {"nlist": 128}, # nlist越大召回率越高，速度越慢
}

# 为向量字段创建索引
collection.create_index("embedding", index_params)
# 打印索引创建成功信息
print("索引创建成功")

